<?php

/**
 * Midia form.
 *
 * @package    form
 * @subpackage Midia
 * @version    SVN: $Id: sfDoctrineFormTemplate.php 6174 2007-11-27 06:22:40Z fabien $
 */
class MidiaForm extends BaseMidiaForm
{
	public function configure()
	{
		parent::configure();

	  	$this->widgetSchema['arquivo']     = new sfWidgetFormInputFile();
      	$this->validatorSchema['arquivo']  = new sfValidatorFile(
      		array(
      			'path' => sfConfig::get('sf_upload_dir'),
      			'required' => false
      		)
      	);

      	$this->widgetSchema['legenda'] = new sfWidgetFormInput(
      		array(),
      		array('size' => 50)
      	);

      	$this->widgetSchema->setLabels(array(
       		'id_midia'        => '#ID',
	        'id_usuario'      => 'Usuario',
	      	'arquivo'         => 'Arquivo',
	      	'nome'            => 'Nome',
	      	'id_evento'       => 'Evento',
	      	'id_patrocinador' => 'Patrocinador',
	      	'legenda'         => 'Legenda'
        ));

	    $this->validatorSchema->setOption('allow_extra_fields', true);

	    unset($this['id_evento'], $this['id_patrocinador']);

	    $this->widgetSchema->setNameFormat('midia[%s]');
	}

	/*Sobreescrita do método doSave, para PODER salvar thumbnail =/ */
   	protected function doSave ( $con = null )
   	{
    	//remove o thumb anterior
       	$thumb_pre   = sfConfig::get('sf_thumbnail_dir').'/'.$this->getObject()->getArquivo();
       	if(file_exists($thumb_pre)) unlink(sfConfig::get('sf_thumbnail_dir').'/'.$this->getObject()->getArquivo());

       	//salvando a imagem. O Objeto é entao atualizado
       	parent::doSave();

       	//Salvando o thumbnail
       	$midia   = new Midia();
       	$midia->createThumb($this);
  	}
}